#include "RegistroFijo.h"

RegistroFijo::RegistroFijo(const Bytes &dato):Registro(dato) {

	this->dato = dato;
}

RegistroFijo::~RegistroFijo() {

}

Bytes RegistroFijo::serializarse() {

	string bytes;

	char vivo = this->estaVivo();
	bytes += vivo;

	bytes += this->dato.toString();

	return Bytes(bytes);
}

void RegistroFijo::hidratarse(const Bytes& componente) {

	if (componente.getTamanio() <= 1) {
		return;
	}

	char vivo = componente.toString()[0];
	this->vivo = vivo;

	this->setDato(componente.getSubBytes(1,componente.getTamanio() - 1));
}

cantBytes RegistroFijo::getTamanioSerializado() {
	return 1 + this->dato.getTamanio();
}
